package com.pipayshop.domain;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import javax.validation.constraints.NotNull;

import java.io.Serializable;

import java.util.Date;
import io.swagger.annotations.ApiModelProperty;
import org.hibernate.validator.constraints.Length;

/**
* 商品与属性关系表
* @TableName commodity_attribute
*/
public class CommodityAttribute implements Serializable {

    /**
    * 主键
    */
    @NotNull(message="[主键]不能为空")
    @ApiModelProperty("主键")
    private Integer id;
    /**
    * 商品id
    */
    @NotBlank(message="[商品id]不能为空")
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("商品id")
    @Length(max= 255,message="编码长度不能超过255")
    private String commodityId;
    /**
    * 属性id
    */
    @NotBlank(message="[属性id]不能为空")
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("属性id")
    @Length(max= 255,message="编码长度不能超过255")
    private String attributeKeyId;
    /**
    * 属性值id
    */
    @NotBlank(message="[属性值id]不能为空")
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("属性值id")
    @Length(max= 255,message="编码长度不能超过255")
    private String attributeValueId;
    /**
    * 创建时间
    */
    @NotNull(message="[创建时间]不能为空")
    @ApiModelProperty("创建时间")
    private Date createTime;
    /**
    * 修改时间
    */
    @NotNull(message="[修改时间]不能为空")
    @ApiModelProperty("修改时间")
    private Date updateTime;
    /**
    * 0：正常 1：逻辑删除 2：物理删除
    */
    @NotNull(message="[0：正常 1：逻辑删除 2：物理删除]不能为空")
    @ApiModelProperty("0：正常 1：逻辑删除 2：物理删除")
    private Integer delFlag;

    /**
    * 主键
    */
    private void setId(Integer id){
    this.id = id;
    }

    /**
    * 商品id
    */
    private void setCommodityId(String commodityId){
    this.commodityId = commodityId;
    }

    /**
    * 属性id
    */
    private void setAttributeKeyId(String attributeKeyId){
    this.attributeKeyId = attributeKeyId;
    }

    /**
    * 属性值id
    */
    private void setAttributeValueId(String attributeValueId){
    this.attributeValueId = attributeValueId;
    }

    /**
    * 创建时间
    */
    private void setCreateTime(Date createTime){
    this.createTime = createTime;
    }

    /**
    * 修改时间
    */
    private void setUpdateTime(Date updateTime){
    this.updateTime = updateTime;
    }

    /**
    * 0：正常 1：逻辑删除 2：物理删除
    */
    private void setDelFlag(Integer delFlag){
    this.delFlag = delFlag;
    }


    /**
    * 主键
    */
    private Integer getId(){
    return this.id;
    }

    /**
    * 商品id
    */
    private String getCommodityId(){
    return this.commodityId;
    }

    /**
    * 属性id
    */
    private String getAttributeKeyId(){
    return this.attributeKeyId;
    }

    /**
    * 属性值id
    */
    private String getAttributeValueId(){
    return this.attributeValueId;
    }

    /**
    * 创建时间
    */
    private Date getCreateTime(){
    return this.createTime;
    }

    /**
    * 修改时间
    */
    private Date getUpdateTime(){
    return this.updateTime;
    }

    /**
    * 0：正常 1：逻辑删除 2：物理删除
    */
    private Integer getDelFlag(){
    return this.delFlag;
    }

}
